001 /*
002 * Created by IntelliJ IDEA.
003 * User: Wei Wang
004 * ACL Lab, School of Computer Science, Montreal, QC
005 * Date: 2002-8-27
006 * Time: 21:48:13
007 */
008 package EVolve.util.predefinedutils;
009
010 import EVolve.exceptions.EVolveException;
011 import java.util.*;
012
013
014 public class PredefinedVisualization {
015
016 private boolean translated;
017 private String name;
018 private String filename;
019 private ArrayList vizInfoList;
020 private int currentIndex;
021 private boolean specific;
022
023
024 public PredefinedVisualization(String configFile,String name) {
025 translated = false;
026 filename = configFile;
027 this.name = name;
028 currentIndex = -1;
029 specific = false;
030 vizInfoList = null;
031 }
032
033 public String getName() {
034 return name;
035 }
036
037 public void setName(String name) {
038 this.name = name;
039 }
040
041 public String getFilename() {
042 return filename;
043 }
044
045 public void setFilename(String filename) {
046 this.filename = filename;
047 }
048
049 public boolean isTranslated() {
050 return translated & (!specific);
051 }
052
053 public void setTranslated(boolean translated) {
054 this.translated = translated;
055 }
056
057 public VizInfo getVizInfo(int index) {
058 return (VizInfo)vizInfoList.get(index);
059 }
060
061 public void translateVizInfo() throws EVolveException{
062 currentIndex = -1;
063 SerializerInfo info = VisualizationSerializer.v().getVizInfoFromDisk(filename);
064 specific = info.specific;
065 vizInfoList = info.vizInfoList;
066 setTranslated(true);
067 }
068
069 public boolean hasNext() {
070 if (currentIndex == vizInfoList.size() -1) return false;
071 return true;
072 }
073
074 public VizInfo getNextVizInfo() {
075 return (VizInfo)vizInfoList.get(++currentIndex);
076 }
077
078 public void reset() {
079 currentIndex = -1;
080 }
081
082 public boolean isSpecific() {
083 return specific;
084 }
085 }